home *** CD-ROM | disk | FTP | other *** search
/ Popular Request / By Popular Request (Arsenal Computer)(SysOptics Distribution System).ISO / amiga1 / dlgtn121.lha / source / tin121.diffs < prev   
Text File  |  1993-08-09  |  22KB  |  754 lines

  1. diff -c2 tin121/Makefile.ami amitin/Makefile.ami
  2. *** tin121/Makefile.ami    Fri Jul 16 09:30:30 1993
  3. --- amitin/Makefile.ami    Mon Aug 09 11:29:29 1993
  4. ***************
  5. *** 1,5 ****
  6.   CC        = sc
  7.   LD        = $(CC)
  8. ! LFLAGS    = link >nil: startup=cres
  9.   EXE        = tin
  10.   MAKE    = smake
  11. --- 1,5 ----
  12.   CC        = sc
  13.   LD        = $(CC)
  14. ! LFLAGS    = link startup=cres
  15.   EXE        = tin
  16.   MAKE    = smake
  17. ***************
  18. *** 8,21 ****
  19.   LIBS    =
  20.   
  21. ! CFLAGS = optimize stringmerge nostkchk parm=register optinlocal \
  22.           DEFINE M_AMIGA DEFINE SYSV DEFINE NO_SHELL_ESCAPE DEFINE NO_PIPING \
  23.           DEFINE SLOW_SCREEN_UPDATE DEFINE AMIGA_BBS DEFINE LIBDIR="uulib:" \
  24. !         DEFINE DONT_LOG_USER DEFINE SPOOLDIR="uunews:" DEFINE MEM_POOL 
  25.   
  26. ! HFILES    = config.h tin.h extern.h nntplib.h proto.h amiga.h os2.h win32.h
  27.   
  28.   CFILES    = active.c amiga.c art.c curses.c debug.c envarg.c feed.c getline.c \
  29.           group.c hashstr.c help.c inews.c init.c kill.c lang.c mail.c \
  30. !         main.c memory.c misc.c newsrc.c nntplib.c open.c os2.c page.c \
  31.           parsdate.y post.c prompt.c rcfile.c save.c screen.c search.c \
  32.           select.c sigfile.c signal.c spooldir.c strftime.c thread.c \
  33. --- 8,22 ----
  34.   LIBS    =
  35.   
  36. ! CFLAGS = optimize stringmerge nostkchk parm=register gst=tin.gst\
  37.           DEFINE M_AMIGA DEFINE SYSV DEFINE NO_SHELL_ESCAPE DEFINE NO_PIPING \
  38.           DEFINE SLOW_SCREEN_UPDATE DEFINE AMIGA_BBS DEFINE LIBDIR="uulib:" \
  39. !         DEFINE DONT_LOG_USER DEFINE SPOOLDIR="uunews:" DEFINE USE_MEMORY_POOL
  40.   
  41. ! HFILES1    = config.h tin.h extern.h nntplib.h proto.h amiga.h os_2.h win32.h
  42. ! HFILES    = tin.gst $(HFILES1)
  43.   
  44.   CFILES    = active.c amiga.c art.c curses.c debug.c envarg.c feed.c getline.c \
  45.           group.c hashstr.c help.c inews.c init.c kill.c lang.c mail.c \
  46. !         main.c memory.c misc.c newsrc.c nntplib.c open.c os_2.c page.c \
  47.           parsdate.y post.c prompt.c rcfile.c save.c screen.c search.c \
  48.           select.c sigfile.c signal.c spooldir.c strftime.c thread.c \
  49. ***************
  50. *** 24,28 ****
  51.   OFILES    = active.o amiga.o art.o curses.o debug.o envarg.o feed.o getline.o \
  52.           group.o hashstr.o help.o inews.o init.o kill.o lang.o mail.o \
  53. !         main.o memory.o misc.o newsrc.o nntplib.o open.o os2.o page.o \
  54.           parsdate.o post.o prompt.o rcfile.o save.o screen.o search.o \
  55.           select.o sigfile.o signal.o spooldir.o strftime.o thread.o \
  56. --- 25,29 ----
  57.   OFILES    = active.o amiga.o art.o curses.o debug.o envarg.o feed.o getline.o \
  58.           group.o hashstr.o help.o inews.o init.o kill.o lang.o mail.o \
  59. !         main.o memory.o misc.o newsrc.o nntplib.o open.o os_2.o page.o \
  60.           parsdate.o post.o prompt.o rcfile.o save.o screen.o search.o \
  61.           select.o sigfile.o signal.o spooldir.o strftime.o thread.o \
  62. ***************
  63. *** 42,45 ****
  64. --- 43,49 ----
  65.       $(LD) actived $(LIBS)
  66.       
  67. + tin.gst:    $(HFILES1)
  68. +     $(CC) $(CFLAGS) makegst=tin.gst gst.h
  69.   active.o:    active.c $(HFILES)
  70.   amiga.o:    amiga.c $(HFILES)
  71. ***************
  72. *** 64,68 ****
  73.   nntplib.o:    nntplib.c $(HFILES)
  74.   open.o:        open.c $(HFILES) patchlev.h
  75. ! os2.o:        os2.c $(HFILES)
  76.   page.o:        page.c $(HFILES)
  77.   parsdate.o:    parsdate.y $(HFILES)
  78. --- 68,72 ----
  79.   nntplib.o:    nntplib.c $(HFILES)
  80.   open.o:        open.c $(HFILES) patchlev.h
  81. ! os_2.o:        os_2.c $(HFILES)
  82.   page.o:        page.c $(HFILES)
  83.   parsdate.o:    parsdate.y $(HFILES)
  84. diff -c2 tin121/README.AMI amitin/README.AMI
  85. *** tin121/README.AMI    Fri Jul 16 09:30:28 1993
  86. --- amitin/README.AMI    Sat Jul 31 11:58:17 1993
  87. ***************
  88. *** 25,28 ****
  89. --- 25,33 ----
  90.   of the recipient of the mail.
  91.   
  92. + Printing is now available. You will have to edit the .tin/tinrc file to
  93. + enable it. The "default_printer" string should be set to "copy PIPE: PRT:"
  94. + instead of its default setting. This option has not been added to the
  95. + internal menu of configurable options.
  96.   The editor you use with TIN should not return instantly, so if you are
  97.   using CED or TTX (or probably some others too) you will need to also add
  98. ***************
  99. *** 65,71 ****
  100.   version:
  101.   
  102. ! - Printing, and archive extraction. Note that 1.1 PL 9 has now enabled
  103. ! uudecoding and un-shar'ing of posted archives. This requires "uudecode" and
  104. ! "unshar" to be in the path.
  105.   
  106.   - Shell escape and piping to any shell command.
  107. --- 70,76 ----
  108.   version:
  109.   
  110. ! - Archive extraction. Note that 1.1 PL 9 has now enabled uudecoding and
  111. ! un-shar'ing of posted archives. This requires "uudecode" and "unshar" to
  112. ! be in the path.
  113.   
  114.   - Shell escape and piping to any shell command.
  115. diff -c2 tin121/actived.c amitin/actived.c
  116. *** tin121/actived.c    Tue Jul 20 08:04:40 1993
  117. --- amitin/actived.c    Sat Jul 31 06:51:40 1993
  118. ***************
  119. *** 61,65 ****
  120.               x = 0;
  121.           }
  122. !         fprintf (active, "%s %05d 00001 y\n", groupname, x);
  123.           numgroups++;
  124.       }
  125. --- 61,65 ----
  126.               x = 0;
  127.           }
  128. !         fprintf (active, "%s %05ld 00001 y\n", groupname, x);
  129.           numgroups++;
  130.       }
  131. diff -c2 tin121/amiga.c amitin/amiga.c
  132. *** tin121/amiga.c    Tue Jul 20 08:04:40 1993
  133. --- amitin/amiga.c    Sat Jul 31 10:35:09 1993
  134. ***************
  135. *** 135,139 ****
  136.   
  137.       if (mode[0] == 'w') {
  138. !         sprintf (cmd, "run %s <PIPE:", command);
  139.           Execute (cmd, 0L, 0L);
  140.           return fopen ("PIPE:", mode);
  141. --- 135,140 ----
  142.   
  143.       if (mode[0] == 'w') {
  144. !         /* "command" must know how to deal with the pipe: */
  145. !         sprintf (cmd, "run >NIL: %s", command);
  146.           Execute (cmd, 0L, 0L);
  147.           return fopen ("PIPE:", mode);
  148. diff -c2 tin121/curses.c amitin/curses.c
  149. *** tin121/curses.c    Tue Jul 20 08:04:42 1993
  150. --- amitin/curses.c    Sat Jul 31 06:57:21 1993
  151. ***************
  152. *** 38,42 ****
  153.   #define        VERY_LONG_STRING    2500
  154.   
  155. ! #if defined(M_AMIGA) || defined(COHERENT) || defined(BSD)
  156.   #    ifndef BSD4_1
  157.   #        include <sgtty.h>
  158. --- 38,42 ----
  159.   #define        VERY_LONG_STRING    2500
  160.   
  161. ! #if (defined(M_AMIGA) && !defined(__SASC)) || defined(COHERENT) || defined(BSD)
  162.   #    ifndef BSD4_1
  163.   #        include <sgtty.h>
  164. ***************
  165. *** 70,74 ****
  166.   #endif
  167.   
  168. ! #if defined(M_AMIGA) || defined(BSD) || defined(MINIX)
  169.   #    ifdef TCGETA
  170.   #        undef TCGETA
  171. --- 70,74 ----
  172.   #endif
  173.   
  174. ! #if (defined(M_AMIGA) && !defined(__SASC)) || defined(BSD) || defined(MINIX)
  175.   #    ifdef TCGETA
  176.   #        undef TCGETA
  177. ***************
  178. *** 82,97 ****
  179.             _original_tty;
  180.   #else
  181. ! #    if defined(HAVE_TERMIOS_H) || defined(sinix)
  182. ! #        ifndef TCGETA
  183. ! #            define TCGETA    STCGETA
  184. ! #        endif
  185. ! #        ifndef TCSETA
  186. ! #            define TCSETAW    STCSETAW
  187. ! #        endif
  188.   struct termios _raw_tty, 
  189.                 _original_tty;
  190. ! #    else
  191.   struct termio _raw_tty, 
  192.                 _original_tty;
  193.   #    endif
  194.   #endif
  195. --- 82,99 ----
  196.             _original_tty;
  197.   #else
  198. ! #    ifndef M_AMIGA
  199. ! #        if defined(HAVE_TERMIOS_H) || defined(sinix)
  200. ! #            ifndef TCGETA
  201. ! #                define TCGETA    STCGETA
  202. ! #            endif
  203. ! #            ifndef TCSETA
  204. ! #                define TCSETAW    STCSETAW
  205. ! #            endif
  206.   struct termios _raw_tty, 
  207.                 _original_tty;
  208. ! #        else
  209.   struct termio _raw_tty, 
  210.                 _original_tty;
  211. + #        endif
  212.   #    endif
  213.   #endif
  214. ***************
  215. *** 116,121 ****
  216.   
  217.   static int in_inverse;            /* 1 when in inverse, 0 otherwise */
  218. ! int    outchar ();                    /* char output for tputs */
  219.   #endif /* INDEX_DAEMON */
  220.   
  221. --- 118,126 ----
  222.   
  223.   static int in_inverse;            /* 1 when in inverse, 0 otherwise */
  224. ! #if __STDC__
  225. ! int    outchar (int c);                /* char output for tputs */
  226. ! #else
  227. ! int    outchar ();
  228. ! #endif
  229.   #endif /* INDEX_DAEMON */
  230.   
  231. ***************
  232. *** 734,738 ****
  233. --- 739,752 ----
  234.       result = read (0, &ch, 1);
  235.   #  endif
  236. + #  ifdef AMIGA
  237. +     if (result <= 0) {
  238. +         /* TIN doesn't check for EOF everywhere */
  239. +         signal_handler(SIGINT);
  240. +         return EOF;
  241. +     }
  242. +     return (ch & 0xFF);
  243. + #  else
  244.           return((result <= 0 ) ? EOF : ch & 0xFF);
  245. + #  endif
  246.   #endif        
  247.   
  248. diff -c2 tin121/extern.h amitin/extern.h
  249. *** tin121/extern.h    Tue Jul 20 08:04:44 1993
  250. --- amitin/extern.h    Sat Jul 31 08:55:52 1993
  251. ***************
  252. *** 38,42 ****
  253.   extern int setuid (int uid);
  254.   extern int tgetent (char *bp, char *name);
  255. ! extern int tputs (register char *cp, int count, int (*outc)());
  256.   extern int unlink (char *path);
  257.   
  258. --- 38,42 ----
  259.   extern int setuid (int uid);
  260.   extern int tgetent (char *bp, char *name);
  261. ! extern int tputs (register char *cp, int count, int (*outc)(int));
  262.   extern int unlink (char *path);
  263.   
  264. ***************
  265. *** 336,339 ****
  266. --- 336,340 ----
  267.   extern char txt_help_start_editor_offset[];
  268.   extern char txt_help_t[];
  269. + extern char txt_help_tab_next_unread[];
  270.   extern char txt_help_t_0[];
  271.   extern char txt_help_t_4[];
  272. ***************
  273. *** 444,447 ****
  274. --- 445,449 ----
  275.   extern char txt_opt_sort_type[];
  276.   extern char txt_opt_start_editor_offset[];
  277. + extern char txt_opt_tab_next_unread[];
  278.   extern char txt_opt_thread_arts[];
  279.   extern char txt_option_not_enabled[];
  280. diff -c2 tin121/group.c amitin/group.c
  281. *** tin121/group.c    Tue Jul 20 08:04:44 1993
  282. --- amitin/group.c    Mon Aug 09 11:27:38 1993
  283. ***************
  284. *** 31,36 ****
  285. --- 31,41 ----
  286.   static char *spaces = "XXXX";
  287.   
  288. + #if __STDC__
  289. + static int bld_sline (int i);
  290. + static int draw_sline (int i, int full);
  291. + #else
  292.   static int bld_sline ();
  293.   static int draw_sline ();
  294. + #endif
  295.   
  296.   #ifndef ART_ADJUST    /* what we do here is bizarre */
  297. ***************
  298. *** 1415,1418 ****
  299. --- 1420,1424 ----
  300.       char new_resps[8];
  301.       char art_cnt[8];
  302. +     char art_lines[8];
  303.        struct art_stat_t sbuf;
  304.   
  305. ***************
  306. *** 1434,1437 ****
  307. --- 1440,1449 ----
  308.       }
  309.   
  310. +     if (active[my_group[cur_groupnum]].attribute.thread_arts != 1) {
  311. +         sprintf (art_lines, "[%4d]", arts[respnum].lines);
  312. +     } else {
  313. +         strcpy (art_lines, "      ");
  314. +     }
  315.       if (n) {
  316.           sprintf (art_cnt, "%-3d", n); 
  317. ***************
  318. *** 1445,1451 ****
  319.       
  320.       j = INDEX2SNUM(i);
  321. !     sprintf (screen[j].col, "  %4d%3s %s%-*.*s%s%-*.*s",
  322. !          i+1, new_resps, art_cnt, len_subj, len_subj, 
  323. !          arts[respnum].subject, spaces, len_from, len_from, from);
  324.       
  325.   #endif /* INDEX_DAEMON */
  326. --- 1457,1474 ----
  327.       
  328.       j = INDEX2SNUM(i);
  329. !     /* format is:
  330. !      * [artnum] [tag ind.] [num in thread] [subject] [from] when threaded
  331. !      * [artnum] [tag ind.] [subject] [lines] [from] when unthreaded
  332. !      */
  333. !     if (active[my_group[cur_groupnum]].attribute.thread_arts != 1) {
  334. !         sprintf (screen[j].col, "  %4d%3s %-*.*s%s %s %-*.*s",
  335. !             i+1, new_resps, len_subj, len_subj, arts[respnum].subject,
  336. !             spaces, art_lines, len_from-5, len_from-5, from);
  337. !     } else {
  338. !         sprintf (screen[j].col, "  %4d%3s %s%-*.*s%s%-*.*s",
  339. !             i+1, new_resps, art_cnt, len_subj, len_subj, 
  340. !             arts[respnum].subject, spaces, len_from, len_from, from);
  341. !     }
  342.       
  343.   #endif /* INDEX_DAEMON */
  344. Only in amitin: gst.h
  345. diff -c2 tin121/hashstr.c amitin/hashstr.c
  346. *** tin121/hashstr.c    Tue Jul 20 08:04:44 1993
  347. --- amitin/hashstr.c    Sat Jul 31 07:33:04 1993
  348. ***************
  349. *** 81,88 ****
  350.       struct hashnode *p;
  351.   
  352.       p = (struct hashnode *) my_malloc ((unsigned) sizeof (struct hashnode));
  353.   
  354.       p->next = (struct hashnode *) 0;
  355. -     iptr = (int *) my_malloc ((unsigned) strlen (s) + sizeof (int) + 1);
  356.       *iptr++ = -1;
  357.       p->s = (char *) iptr;
  358. --- 81,94 ----
  359.       struct hashnode *p;
  360.   
  361. + #ifdef USE_MEMORY_POOL
  362. +     p = (struct hashnode *) pool_malloc ((unsigned) sizeof (struct hashnode)
  363. +         + strlen(s) + sizeof (int) + 1, MP_HASHSTR);
  364. +     iptr = (int *)&p[1];
  365. + #else
  366.       p = (struct hashnode *) my_malloc ((unsigned) sizeof (struct hashnode));
  367. +     iptr = (int *) my_malloc ((unsigned) strlen (s) + sizeof (int) + 1);
  368. + #endif
  369.   
  370.       p->next = (struct hashnode *) 0;
  371.       *iptr++ = -1;
  372.       p->s = (char *) iptr;
  373. ***************
  374. *** 110,113 ****
  375. --- 116,120 ----
  376.       for (i = 0; i < HASHNODE_TABLE_SIZE; i++)
  377.           if (table[i] != (struct hashnode *) 0) {
  378. + #ifndef USE_MEMORY_POOL
  379.               p = table[i];
  380.               while (p != (struct hashnode *) 0) {
  381. ***************
  382. *** 121,125 ****
  383. --- 128,136 ----
  384.                   p = next;
  385.               }
  386. + #endif
  387.               table[i] = (struct hashnode *) 0;
  388.           }
  389. + #ifdef USE_MEMORY_POOL
  390. +     pool_free(MP_HASHSTR);
  391. + #endif
  392.   }
  393. diff -c2 tin121/inews.c amitin/inews.c
  394. *** tin121/inews.c    Tue Jul 20 08:04:46 1993
  395. --- amitin/inews.c    Thu Jul 22 03:47:28 1993
  396. ***************
  397. *** 398,402 ****
  398.   #endif    /* M_UNIX */
  399.       
  400. !         ret_code = (invoke_cmd (buf) ? 0 : 1);
  401.       } 
  402.   
  403. --- 398,402 ----
  404.   #endif    /* M_UNIX */
  405.       
  406. !         ret_code = (invoke_cmd (buf) ? 1 : 0);
  407.       } 
  408.   
  409. diff -c2 tin121/lang.c amitin/lang.c
  410. *** tin121/lang.c    Tue Jul 20 08:04:46 1993
  411. --- amitin/lang.c    Sat Jul 31 08:52:48 1993
  412. ***************
  413. *** 437,440 ****
  414. --- 437,441 ----
  415.   char txt_opt_process_type[] = "14 Process type    : ";
  416.   char txt_opt_sort_type[] = "15 Sort article by : ";
  417. + char txt_opt_tab_next_unread[] = "16 TAB behaviour   : ";
  418.   char txt_opt_savedir[] = "16 Save directory  : ";
  419.   char txt_opt_maildir[] = "17 Mail directory  : ";
  420. ***************
  421. *** 479,482 ****
  422. --- 480,484 ----
  423.   char txt_help_post_proc_type[] = "Post process (ie. unshar) saved article/thread. <SPACE> toggles & <CR> sets."; 
  424.   char txt_help_sort_type[] = "Sort articles by Subject, From or Date fields. <SPACE> toggles & <CR> sets.";
  425. + char txt_help_tab_next_unread[] = "TAB moves to next unread article. <SPACE> toggles & <CR> sets.";
  426.   char txt_help_savedir[] = "The directory where you want articles/threads saved.";
  427.   char txt_help_maildir[] = "The directory where articles/threads are to be saved in mailbox format.";
  428. diff -c2 tin121/mail.c amitin/mail.c
  429. *** tin121/mail.c    Tue Jul 20 08:04:46 1993
  430. --- amitin/mail.c    Sat Jul 31 07:39:16 1993
  431. ***************
  432. *** 243,247 ****
  433. --- 243,251 ----
  434.            
  435.           if (i >= 0 && active[i].description == (char *) 0) {
  436. + #ifdef USE_MEMORY_POOL
  437. +             active[i].description = pool_str_dup (p, MP_ACTIVE);
  438. + #else
  439.               active[i].description = str_dup (p);
  440. + #endif
  441.               if (active[i].type == GROUP_TYPE_NEWS) {
  442.                   if (fp_save && read_news_via_nntp && 
  443. diff -c2 tin121/memory.c amitin/memory.c
  444. *** tin121/memory.c    Tue Jul 20 08:04:48 1993
  445. --- amitin/memory.c    Sat Jul 31 08:29:10 1993
  446. ***************
  447. *** 315,319 ****
  448. --- 315,323 ----
  449.   
  450.       if (active != (struct group_t *) 0) {        /* active[] */
  451. + #ifdef USE_MEMORY_POOL
  452. +         pool_free(MP_ACTIVE);
  453. + #endif
  454.           for (i=0 ; i < num_active ; i++) {
  455. + #ifndef USE_MEMORY_POOL
  456.               if (active[i].name != (char *) 0) {
  457.                   free ((char *) active[i].name);
  458. ***************
  459. *** 324,327 ****
  460. --- 328,332 ----
  461.                   active[i].description = (char *) 0;
  462.               }
  463. + #endif
  464.               if (active[i].type == GROUP_TYPE_MAIL &&
  465.                   active[i].spooldir != (char *) 0) {
  466. ***************
  467. *** 492,496 ****
  468.    
  469.   char *pool_malloc (size, pn)
  470. !     int size;
  471.       int pn;
  472.   {
  473. --- 497,501 ----
  474.    
  475.   char *pool_malloc (size, pn)
  476. !     unsigned int size;
  477.       int pn;
  478.   {
  479. diff -c2 tin121/misc.c amitin/misc.c
  480. *** tin121/misc.c    Tue Jul 20 08:04:48 1993
  481. --- amitin/misc.c    Wed Jul 21 06:30:09 1993
  482. ***************
  483. *** 1454,1458 ****
  484.                   switch (*++format) {
  485.                       case '/':    /* users homedir */
  486. !                         sprintf (tbuf, "%s/", homedir);
  487.                           break;
  488.                       default:    /* some other users homedir */
  489. --- 1454,1458 ----
  490.                   switch (*++format) {
  491.                       case '/':    /* users homedir */
  492. !                         joinpath (tbuf, homedir, "");
  493.                           break;
  494.                       default:    /* some other users homedir */
  495. ***************
  496. *** 1527,1531 ****
  497.                    */
  498.                   if (startp == format && maildir != (char *) 0) {
  499. !                     sprintf (tbuf, "%s/", maildir);                    
  500.                       i = strlen (tbuf);
  501.                       if (i) {
  502. --- 1527,1531 ----
  503.                    */
  504.                   if (startp == format && maildir != (char *) 0) {
  505. !                     joinpath(tbuf, maildir, "");
  506.                       i = strlen (tbuf);
  507.                       if (i) {
  508. ***************
  509. *** 1562,1566 ****
  510.                               tmp[0] = tmp[0] - 32;
  511.                           }
  512. !                         sprintf (tbuf, "%s/%s/", buf, tmp);
  513.                           i = strlen (tbuf);
  514.                           if (i) {
  515. --- 1562,1567 ----
  516.                               tmp[0] = tmp[0] - 32;
  517.                           }
  518. !                         joinpath(tbuf, buf, tmp);
  519. !                         strcat (tbuf, "/");
  520.                           i = strlen (tbuf);
  521.                           if (i) {
  522. diff -c2 tin121/nntplib.h amitin/nntplib.h
  523. *** tin121/nntplib.h    Tue Jul 20 08:04:50 1993
  524. --- amitin/nntplib.h    Sat Jul 31 08:36:39 1993
  525. ***************
  526. *** 30,33 ****
  527. --- 30,34 ----
  528.    */
  529.   
  530. + #if 0
  531.   extern char *getserverbyfile();
  532.   /* extern int server_init(); */
  533. ***************
  534. *** 37,40 ****
  535. --- 38,42 ----
  536.   extern int get_server();
  537.   extern void close_server();
  538. + #endif
  539.   
  540.   /*
  541. Only in amitin: parsdate.c
  542. diff -c2 tin121/post.c amitin/post.c
  543. *** tin121/post.c    Tue Jul 20 08:04:52 1993
  544. --- amitin/post.c    Sat Jul 31 07:49:08 1993
  545. ***************
  546. *** 67,73 ****
  547.               posted[i].action = buf[j];
  548.               j += 2;
  549. !             for (k=j,j=0 ; buf[k] != '|' && buf[k] != ',' ; k++, j++) {
  550. !                 if (j < sizeof (posted[i].group)) {
  551. !                     posted[i].group[j] = buf[k];
  552.                   }
  553.               }
  554. --- 67,74 ----
  555.               posted[i].action = buf[j];
  556.               j += 2;
  557. !             for (k=j,j=0 ; buf[k] != '|' && buf[k] != ',' ; k++) {
  558. !                 /* don't overrun string size - leave room for the ,... */
  559. !                 if (j < sizeof (posted[i].group)-5) {
  560. !                     posted[i].group[j++] = buf[k];
  561.                   }
  562.               }
  563. ***************
  564. *** 83,89 ****
  565.               posted[i].group[j++] = '\0';
  566.               k++;
  567. !             for (j=k,k=0 ; buf[j] != '\n' ; j++, k++) {
  568. !                 if (k < sizeof (posted[i].subj)) {
  569. !                     posted[i].subj[k] = buf[j];
  570.                   }
  571.               }
  572. --- 84,90 ----
  573.               posted[i].group[j++] = '\0';
  574.               k++;
  575. !             for (j=k,k=0 ; buf[j] != '\n' ; j++) {
  576. !                 if (k < sizeof (posted[i].subj)-1) {
  577. !                     posted[i].subj[k++] = buf[j];
  578.                   }
  579.               }
  580. ***************
  581. *** 1121,1125 ****
  582.   #endif
  583.       fprintf (fp, "\nCFG1: active=%d  arts=%d  reread=%d  longfilenames=%d  setuid=%d\n",
  584. !         DEFAULT_ACTIVE_NUM, 
  585.           DEFAULT_ARTICLE_NUM, 
  586.           reread_active_file_secs,
  587. --- 1122,1126 ----
  588.   #endif
  589.       fprintf (fp, "\nCFG1: active=%d  arts=%d  reread=%d  longfilenames=%d  setuid=%d\n",
  590. !         max_active,
  591.           DEFAULT_ARTICLE_NUM, 
  592.           reread_active_file_secs,
  593. diff -c2 tin121/proto.h amitin/proto.h
  594. *** tin121/proto.h    Tue Jul 20 08:04:52 1993
  595. --- amitin/proto.h    Sat Jul 31 08:15:04 1993
  596. ***************
  597. *** 157,160 ****
  598. --- 157,165 ----
  599.   extern char *my_malloc(unsigned size);
  600.   extern char *my_realloc(char *p, unsigned size);
  601. + #ifdef USE_MEMORY_POOL
  602. + extern char *pool_malloc(unsigned size, int pool);
  603. + extern void pool_free(int pool);
  604. + extern char *pool_str_dup(char *str, int pool);
  605. + #endif
  606.   /* misc.c */
  607.   extern void asfail(char *file, int line, char *cond);
  608. ***************
  609. *** 587,590 ****
  610. --- 592,600 ----
  611.   extern char *my_malloc();
  612.   extern char *my_realloc();
  613. + #ifdef USE_MEMORY_POOL
  614. + extern char *pool_malloc();
  615. + extern void pool_free();
  616. + extern char *pool_str_dup();
  617. + #endif
  618.   /* misc.c */
  619.   extern void asfail();
  620. diff -c2 tin121/rcfile.c amitin/rcfile.c
  621. *** tin121/rcfile.c    Tue Jul 20 08:04:54 1993
  622. --- amitin/rcfile.c    Sat Jul 31 07:54:33 1993
  623. ***************
  624. *** 788,792 ****
  625.                   }
  626.                   break;
  627. ! #ifndef AMIGA_BBS
  628.               case 16:
  629.                   show_menu_help (txt_help_savedir);
  630. --- 788,797 ----
  631.                   }
  632.                   break;
  633. ! #ifdef AMIGA_BBS
  634. !             case 16:    /* TAB goes to next unread or pages */
  635. !                 prompt_on_off (INDEX_TOP+12, COL1, &tab_goto_next_unread,
  636. !                     txt_help_tab_next_unread, txt_opt_tab_next_unread);
  637. !                 break;
  638. ! #else
  639.               case 16:
  640.                   show_menu_help (txt_help_savedir);
  641. ***************
  642. *** 914,918 ****
  643.       printf ("%s%s\r\n\r\n", txt_opt_sort_type, str);
  644.   
  645. ! #ifndef AMIGA_BBS
  646.       printf ("%s%s\r\n\r\n", txt_opt_savedir, default_savedir);
  647.       printf ("%s%s\r\n\r\n", txt_opt_maildir, default_maildir);
  648. --- 919,925 ----
  649.       printf ("%s%s\r\n\r\n", txt_opt_sort_type, str);
  650.   
  651. ! #ifdef AMIGA_BBS
  652. !     printf ("%s%s\r\n\r\n",txt_opt_tab_next_unread, (tab_goto_next_unread ? "ON" : "OFF"));
  653. ! #else
  654.       printf ("%s%s\r\n\r\n", txt_opt_savedir, default_savedir);
  655.       printf ("%s%s\r\n\r\n", txt_opt_maildir, default_maildir);
  656. diff -c2 tin121/signal.c amitin/signal.c
  657. *** tin121/signal.c    Tue Jul 20 08:04:56 1993
  658. --- amitin/signal.c    Sat Jul 31 09:14:05 1993
  659. ***************
  660. *** 67,70 ****
  661. --- 67,71 ----
  662.   #ifdef HAVE_SIGTYPE_VOID
  663.       signal (sig, func);
  664. +     return (sigtype_t (*)())NULL;
  665.   #endif
  666.   }
  667. ***************
  668. *** 173,176 ****
  669. --- 174,181 ----
  670.   #ifdef SIGINT
  671.           case SIGINT:
  672. + #  ifdef AMIGA   /* SAS-C supports this. We treat it like quit */
  673. +             sigtext = "SIGINT ";
  674. +             break;
  675. + #  else
  676.               if (update) {
  677.                   sigtext = "SIGINT ";
  678. ***************
  679. *** 180,183 ****
  680. --- 185,189 ----
  681.               }
  682.               break;
  683. + #  endif
  684.   #endif
  685.   #ifdef SIGQUIT
  686. diff -c2 tin121/strftime.c amitin/strftime.c
  687. *** tin121/strftime.c    Tue Jul 20 08:04:56 1993
  688. --- amitin/strftime.c    Sat Jul 31 07:55:41 1993
  689. ***************
  690. *** 253,257 ****
  691.       if (s < endp && *format == '\0') {
  692.           *s = '\0';
  693. !         return (s - start);
  694.       } else
  695.           return 0;
  696. --- 253,257 ----
  697.       if (s < endp && *format == '\0') {
  698.           *s = '\0';
  699. !         return (size_t) (s - start);
  700.       } else
  701.           return 0;
  702. diff -c2 tin121/thread.c amitin/thread.c
  703. *** tin121/thread.c    Tue Jul 20 08:04:56 1993
  704. --- amitin/thread.c    Wed Jul 21 06:10:11 1993
  705. ***************
  706. *** 30,33 ****
  707. --- 30,36 ----
  708.   #define MARK_OFFSET 8
  709.   
  710. + #if __STDC__
  711. + static int bld_tline (int l, int i);
  712. + #endif
  713.   
  714.   static int bld_tline (l, i)
  715. ***************
  716. *** 101,104 ****
  717. --- 104,110 ----
  718.   }
  719.   
  720. + #if __STDC__
  721. + static int draw_tline (int i, int full);
  722. + #endif
  723.   
  724.   static int draw_tline (i, full)
  725. Only in amitin: tin
  726. Only in amitin: tin.gst
  727. Only in amitin: tin.gst.info
  728. diff -c2 tin121/tin.h amitin/tin.h
  729. *** tin121/tin.h    Tue Jul 20 08:04:58 1993
  730. --- amitin/tin.h    Sat Jul 31 10:29:25 1993
  731. ***************
  732. *** 315,319 ****
  733.   #        define    DEFAULT_MAILBOX        "uumail:"
  734.   #        define    DEFAULT_POSTER        "uucp:c/postnews %s"
  735. ! #        define    DEFAULT_PRINTER        "c:type"        /* Not Yet Implemented */
  736.   #        define    DEFAULT_SHELL        "c:newshell"    /* Not Yet Implemented */
  737.   #        define    DEFAULT_UUDECODE    "uudecode %s"
  738. --- 315,319 ----
  739.   #        define    DEFAULT_MAILBOX        "uumail:"
  740.   #        define    DEFAULT_POSTER        "uucp:c/postnews %s"
  741. ! #        define    DEFAULT_PRINTER        "c:copy PIPE: NIL:"
  742.   #        define    DEFAULT_SHELL        "c:newshell"    /* Not Yet Implemented */
  743.   #        define    DEFAULT_UUDECODE    "uudecode %s"
  744. Only in amitin: tin.info
  745. Only in amitin: tin.lnk
  746. Only in amitin: tind
  747. Only in amitin: tind.info
  748. Only in amitin: tind.lnk
  749.